<?php

declare(strict_types=1);

namespace ImiApp\ApiServer\Api\Model\Base;

use Imi\Config\Annotation\ConfigValue;
use Imi\Model\Annotation\Column;
use Imi\Model\Annotation\DDL;
use Imi\Model\Annotation\Entity;
use Imi\Model\Annotation\Table;
use ImiApp\ImiServer\AbstractModel as Model;

/**
 * 售后单 基类.
 *
 * @Entity(camel=false, bean=true, incrUpdate=false)
 * @Table(name=@ConfigValue(name="@app.models.ImiApp\ApiServer\Api\Model\OrderAftersale.name", default="fa_order_aftersale"), usePrefix=false, id={"id"}, dbPoolName=@ConfigValue(name="@app.models.ImiApp\ApiServer\Api\Model\OrderAftersale.poolName"))
 * @DDL(sql="CREATE TABLE `fa_order_aftersale` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `aftersale_sn` varchar(40) NOT NULL COMMENT '售后单号',
  `user_id` int(11) NOT NULL DEFAULT '0' COMMENT '用户',
  `type` varchar(20) NOT NULL COMMENT '类型:refund=退款,return=退货,change=换货,other=其他',
  `type_str` varchar(255) DEFAULT NULL COMMENT '售后类型',
  `phone` varchar(20) DEFAULT NULL COMMENT '联系方式',
  `activity_id` int(11) DEFAULT NULL COMMENT '活动',
  `activity_type` varchar(255) DEFAULT NULL COMMENT '活动类型',
  `order_id` int(11) NOT NULL DEFAULT '0' COMMENT '订单',
  `order_item_id` int(11) NOT NULL DEFAULT '0' COMMENT '订单商品',
  `goods_id` int(11) NOT NULL DEFAULT '0' COMMENT '商品',
  `goods_sku_price_id` int(11) NOT NULL DEFAULT '0' COMMENT '规格 id',
  `goods_sku_text` varchar(30) DEFAULT NULL COMMENT '规格名',
  `goods_title` varchar(255) DEFAULT NULL COMMENT '商品名称',
  `goods_image` varchar(255) DEFAULT NULL COMMENT '商品图片',
  `goods_original_price` decimal(10,2) NOT NULL COMMENT '商品原价',
  `discount_fee` decimal(10,2) DEFAULT NULL COMMENT '优惠费用',
  `goods_price` decimal(10,2) NOT NULL COMMENT '商品价格',
  `goods_num` int(11) NOT NULL DEFAULT '0' COMMENT '购买数量',
  `dispatch_status` tinyint(2) NOT NULL DEFAULT '0' COMMENT '发货状态:0=未发货,1=已发货,2=已收货',
  `dispatch_fee` decimal(10,2) DEFAULT NULL COMMENT '发货费用',
  `aftersale_status` tinyint(2) NOT NULL COMMENT '售后状态:-1=拒绝,0=未处理,1=处理中,2=售后完成',
  `refund_status` enum('-1','0','1','2') DEFAULT '0' COMMENT '退款状态:-1=拒绝退款,0=未退款,1=同意',
  `ps` varchar(2555) DEFAULT NULL COMMENT '买家备注',
  `memo` varchar(2555) DEFAULT NULL COMMENT '卖家备注',
  `images` varchar(2555) DEFAULT NULL COMMENT '买家图集',
  `refund_fee` decimal(10,2) DEFAULT NULL COMMENT '退款金额',
  `refund_score` decimal(10,2) DEFAULT NULL COMMENT '退款积分',
  `refund_shell` decimal(10,2) DEFAULT NULL COMMENT '退款贝壳',
  `createtime` int(11) DEFAULT NULL COMMENT '添加时间',
  `updatetime` int(11) DEFAULT NULL COMMENT '更新时间',
  `deletetime` int(11) DEFAULT NULL COMMENT '删除时间',
  `store_id` int(10) unsigned DEFAULT NULL COMMENT '店铺id',
  `express_name` varchar(60) DEFAULT NULL COMMENT '买家退快递公司',
  `express_code` varchar(60) DEFAULT NULL COMMENT '买家退快递公司编号',
  `express_no` varchar(60) DEFAULT NULL COMMENT '买家退快递单号',
  `store_express_name` varchar(60) DEFAULT NULL COMMENT '店铺发快递公司',
  `store_express_code` varchar(60) DEFAULT NULL COMMENT '店铺发快递公司编号',
  `store_express_no` varchar(60) DEFAULT NULL COMMENT '店铺发快递单号',
  `store_phone` varchar(20) DEFAULT NULL COMMENT '联系电话',
  `consignee` varchar(20) DEFAULT NULL COMMENT '收货人',
  `address` varchar(255) DEFAULT NULL COMMENT '详细地址',
  `sys_status` tinyint(2) NOT NULL COMMENT '平台状态:0=未介入,1=申请介入,2=处理中,3=完成',
  PRIMARY KEY (`id`) USING BTREE,
  UNIQUE KEY `aftersale_sn` (`aftersale_sn`) USING BTREE,
  KEY `user_id` (`user_id`) USING BTREE,
  KEY `order_id` (`order_id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='售后单'", decode="")
 *
 * @property int|null $id 
 * @property string|null $aftersaleSn 售后单号
 * @property int|null $userId 用户
 * @property string|null $type 类型:refund=退款,return=退货,change=换货,other=其他
 * @property string|null $typeStr 售后类型
 * @property string|null $phone 联系方式
 * @property int|null $activityId 活动
 * @property string|null $activityType 活动类型
 * @property int|null $orderId 订单
 * @property int|null $orderItemId 订单商品
 * @property int|null $goodsId 商品
 * @property int|null $goodsSkuPriceId 规格 id
 * @property string|null $goodsSkuText 规格名
 * @property string|null $goodsTitle 商品名称
 * @property string|null $goodsImage 商品图片
 * @property string|float|int|null $goodsOriginalPrice 商品原价
 * @property string|float|int|null $discountFee 优惠费用
 * @property string|float|int|null $goodsPrice 商品价格
 * @property int|null $goodsNum 购买数量
 * @property int|null $dispatchStatus 发货状态:0=未发货,1=已发货,2=已收货
 * @property string|float|int|null $dispatchFee 发货费用
 * @property int|null $aftersaleStatus 售后状态:-1=拒绝,0=未处理,1=处理中,2=售后完成
 * @property string|null $refundStatus 退款状态:-1=拒绝退款,0=未退款,1=同意
 * @property string|null $ps 买家备注
 * @property string|null $memo 卖家备注
 * @property string|null $images 买家图集
 * @property string|float|int|null $refundFee 退款金额
 * @property string|float|int|null $refundScore 退款积分
 * @property string|float|int|null $refundShell 退款贝壳
 * @property int|null $createtime 添加时间
 * @property int|null $updatetime 更新时间
 * @property int|null $deletetime 删除时间
 * @property int|null $storeId 店铺id
 * @property string|null $expressName 买家退快递公司
 * @property string|null $expressCode 买家退快递公司编号
 * @property string|null $expressNo 买家退快递单号
 * @property string|null $storeExpressName 店铺发快递公司
 * @property string|null $storeExpressCode 店铺发快递公司编号
 * @property string|null $storeExpressNo 店铺发快递单号
 * @property string|null $storePhone 联系电话
 * @property string|null $consignee 收货人
 * @property string|null $address 详细地址
 * @property int|null $sysStatus 平台状态:0=未介入,1=申请介入,2=处理中,3=完成
 */
abstract class OrderAftersaleBase extends Model
{
    /**
     * {@inheritdoc}
     */
    public const PRIMARY_KEY = 'id';

    /**
     * {@inheritdoc}
     */
    public const PRIMARY_KEYS = ["id"];

    /**
     * id.
     * @Column(name="id", type="int", length=11, accuracy=0, nullable=false, default="", isPrimaryKey=true, primaryKeyIndex=0, isAutoIncrement=true, unsigned=false, virtual=false)
     * @var int|null
     */
    protected ?int $id = NULL;

    /**
     * 获取 id.
     *
     * @return int|null
     */
    public function getId(): ?int
    {
        return $this->id;
    }

    /**
     * 赋值 id.
     * @param int|null $id id
     * @return static
     */
    public function setId($id)
    {
        $this->id = null === $id ? null : (int)$id;
        return $this;
    }

    /**
     * 售后单号.
     * aftersale_sn
     * @Column(name="aftersale_sn", type="varchar", length=40, accuracy=0, nullable=false, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var string|null
     */
    protected ?string $aftersaleSn = NULL;

    /**
     * 获取 aftersaleSn - 售后单号.
     *
     * @return string|null
     */
    public function getAftersaleSn(): ?string
    {
        return $this->aftersaleSn;
    }

    /**
     * 赋值 aftersaleSn - 售后单号.
     * @param string|null $aftersaleSn aftersale_sn
     * @return static
     */
    public function setAftersaleSn($aftersaleSn)
    {
        $this->aftersaleSn = null === $aftersaleSn ? null : (string)$aftersaleSn;
        return $this;
    }

    /**
     * 用户.
     * user_id
     * @Column(name="user_id", type="int", length=11, accuracy=0, nullable=false, default="0", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var int|null
     */
    protected ?int $userId = 0;

    /**
     * 获取 userId - 用户.
     *
     * @return int|null
     */
    public function getUserId(): ?int
    {
        return $this->userId;
    }

    /**
     * 赋值 userId - 用户.
     * @param int|null $userId user_id
     * @return static
     */
    public function setUserId($userId)
    {
        $this->userId = null === $userId ? null : (int)$userId;
        return $this;
    }

    /**
     * 类型:refund=退款,return=退货,change=换货,other=其他.
     * type
     * @Column(name="type", type="varchar", length=20, accuracy=0, nullable=false, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var string|null
     */
    protected ?string $type = NULL;

    /**
     * 获取 type - 类型:refund=退款,return=退货,change=换货,other=其他.
     *
     * @return string|null
     */
    public function getType(): ?string
    {
        return $this->type;
    }

    /**
     * 赋值 type - 类型:refund=退款,return=退货,change=换货,other=其他.
     * @param string|null $type type
     * @return static
     */
    public function setType($type)
    {
        $this->type = null === $type ? null : (string)$type;
        return $this;
    }

    /**
     * 售后类型.
     * type_str
     * @Column(name="type_str", type="varchar", length=255, accuracy=0, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var string|null
     */
    protected ?string $typeStr = NULL;

    /**
     * 获取 typeStr - 售后类型.
     *
     * @return string|null
     */
    public function getTypeStr(): ?string
    {
        return $this->typeStr;
    }

    /**
     * 赋值 typeStr - 售后类型.
     * @param string|null $typeStr type_str
     * @return static
     */
    public function setTypeStr($typeStr)
    {
        $this->typeStr = null === $typeStr ? null : (string)$typeStr;
        return $this;
    }

    /**
     * 联系方式.
     * phone
     * @Column(name="phone", type="varchar", length=20, accuracy=0, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var string|null
     */
    protected ?string $phone = NULL;

    /**
     * 获取 phone - 联系方式.
     *
     * @return string|null
     */
    public function getPhone(): ?string
    {
        return $this->phone;
    }

    /**
     * 赋值 phone - 联系方式.
     * @param string|null $phone phone
     * @return static
     */
    public function setPhone($phone)
    {
        $this->phone = null === $phone ? null : (string)$phone;
        return $this;
    }

    /**
     * 活动.
     * activity_id
     * @Column(name="activity_id", type="int", length=11, accuracy=0, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var int|null
     */
    protected ?int $activityId = NULL;

    /**
     * 获取 activityId - 活动.
     *
     * @return int|null
     */
    public function getActivityId(): ?int
    {
        return $this->activityId;
    }

    /**
     * 赋值 activityId - 活动.
     * @param int|null $activityId activity_id
     * @return static
     */
    public function setActivityId($activityId)
    {
        $this->activityId = null === $activityId ? null : (int)$activityId;
        return $this;
    }

    /**
     * 活动类型.
     * activity_type
     * @Column(name="activity_type", type="varchar", length=255, accuracy=0, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var string|null
     */
    protected ?string $activityType = NULL;

    /**
     * 获取 activityType - 活动类型.
     *
     * @return string|null
     */
    public function getActivityType(): ?string
    {
        return $this->activityType;
    }

    /**
     * 赋值 activityType - 活动类型.
     * @param string|null $activityType activity_type
     * @return static
     */
    public function setActivityType($activityType)
    {
        $this->activityType = null === $activityType ? null : (string)$activityType;
        return $this;
    }

    /**
     * 订单.
     * order_id
     * @Column(name="order_id", type="int", length=11, accuracy=0, nullable=false, default="0", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var int|null
     */
    protected ?int $orderId = 0;

    /**
     * 获取 orderId - 订单.
     *
     * @return int|null
     */
    public function getOrderId(): ?int
    {
        return $this->orderId;
    }

    /**
     * 赋值 orderId - 订单.
     * @param int|null $orderId order_id
     * @return static
     */
    public function setOrderId($orderId)
    {
        $this->orderId = null === $orderId ? null : (int)$orderId;
        return $this;
    }

    /**
     * 订单商品.
     * order_item_id
     * @Column(name="order_item_id", type="int", length=11, accuracy=0, nullable=false, default="0", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var int|null
     */
    protected ?int $orderItemId = 0;

    /**
     * 获取 orderItemId - 订单商品.
     *
     * @return int|null
     */
    public function getOrderItemId(): ?int
    {
        return $this->orderItemId;
    }

    /**
     * 赋值 orderItemId - 订单商品.
     * @param int|null $orderItemId order_item_id
     * @return static
     */
    public function setOrderItemId($orderItemId)
    {
        $this->orderItemId = null === $orderItemId ? null : (int)$orderItemId;
        return $this;
    }

    /**
     * 商品.
     * goods_id
     * @Column(name="goods_id", type="int", length=11, accuracy=0, nullable=false, default="0", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var int|null
     */
    protected ?int $goodsId = 0;

    /**
     * 获取 goodsId - 商品.
     *
     * @return int|null
     */
    public function getGoodsId(): ?int
    {
        return $this->goodsId;
    }

    /**
     * 赋值 goodsId - 商品.
     * @param int|null $goodsId goods_id
     * @return static
     */
    public function setGoodsId($goodsId)
    {
        $this->goodsId = null === $goodsId ? null : (int)$goodsId;
        return $this;
    }

    /**
     * 规格 id.
     * goods_sku_price_id
     * @Column(name="goods_sku_price_id", type="int", length=11, accuracy=0, nullable=false, default="0", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var int|null
     */
    protected ?int $goodsSkuPriceId = 0;

    /**
     * 获取 goodsSkuPriceId - 规格 id.
     *
     * @return int|null
     */
    public function getGoodsSkuPriceId(): ?int
    {
        return $this->goodsSkuPriceId;
    }

    /**
     * 赋值 goodsSkuPriceId - 规格 id.
     * @param int|null $goodsSkuPriceId goods_sku_price_id
     * @return static
     */
    public function setGoodsSkuPriceId($goodsSkuPriceId)
    {
        $this->goodsSkuPriceId = null === $goodsSkuPriceId ? null : (int)$goodsSkuPriceId;
        return $this;
    }

    /**
     * 规格名.
     * goods_sku_text
     * @Column(name="goods_sku_text", type="varchar", length=30, accuracy=0, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var string|null
     */
    protected ?string $goodsSkuText = NULL;

    /**
     * 获取 goodsSkuText - 规格名.
     *
     * @return string|null
     */
    public function getGoodsSkuText(): ?string
    {
        return $this->goodsSkuText;
    }

    /**
     * 赋值 goodsSkuText - 规格名.
     * @param string|null $goodsSkuText goods_sku_text
     * @return static
     */
    public function setGoodsSkuText($goodsSkuText)
    {
        $this->goodsSkuText = null === $goodsSkuText ? null : (string)$goodsSkuText;
        return $this;
    }

    /**
     * 商品名称.
     * goods_title
     * @Column(name="goods_title", type="varchar", length=255, accuracy=0, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var string|null
     */
    protected ?string $goodsTitle = NULL;

    /**
     * 获取 goodsTitle - 商品名称.
     *
     * @return string|null
     */
    public function getGoodsTitle(): ?string
    {
        return $this->goodsTitle;
    }

    /**
     * 赋值 goodsTitle - 商品名称.
     * @param string|null $goodsTitle goods_title
     * @return static
     */
    public function setGoodsTitle($goodsTitle)
    {
        $this->goodsTitle = null === $goodsTitle ? null : (string)$goodsTitle;
        return $this;
    }

    /**
     * 商品图片.
     * goods_image
     * @Column(name="goods_image", type="varchar", length=255, accuracy=0, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var string|null
     */
    protected ?string $goodsImage = NULL;

    /**
     * 获取 goodsImage - 商品图片.
     *
     * @return string|null
     */
    public function getGoodsImage(): ?string
    {
        return $this->goodsImage;
    }

    /**
     * 赋值 goodsImage - 商品图片.
     * @param string|null $goodsImage goods_image
     * @return static
     */
    public function setGoodsImage($goodsImage)
    {
        $this->goodsImage = null === $goodsImage ? null : (string)$goodsImage;
        return $this;
    }

    /**
     * 商品原价.
     * goods_original_price
     * @Column(name="goods_original_price", type="decimal", length=10, accuracy=2, nullable=false, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var string|float|int|null
     */
    protected $goodsOriginalPrice = NULL;

    /**
     * 获取 goodsOriginalPrice - 商品原价.
     *
     * @return string|float|int|null
     */
    public function getGoodsOriginalPrice()
    {
        return $this->goodsOriginalPrice;
    }

    /**
     * 赋值 goodsOriginalPrice - 商品原价.
     * @param string|float|int|null $goodsOriginalPrice goods_original_price
     * @return static
     */
    public function setGoodsOriginalPrice($goodsOriginalPrice)
    {
        $this->goodsOriginalPrice = null === $goodsOriginalPrice ? null : $goodsOriginalPrice;
        return $this;
    }

    /**
     * 优惠费用.
     * discount_fee
     * @Column(name="discount_fee", type="decimal", length=10, accuracy=2, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var string|float|int|null
     */
    protected $discountFee = NULL;

    /**
     * 获取 discountFee - 优惠费用.
     *
     * @return string|float|int|null
     */
    public function getDiscountFee()
    {
        return $this->discountFee;
    }

    /**
     * 赋值 discountFee - 优惠费用.
     * @param string|float|int|null $discountFee discount_fee
     * @return static
     */
    public function setDiscountFee($discountFee)
    {
        $this->discountFee = null === $discountFee ? null : $discountFee;
        return $this;
    }

    /**
     * 商品价格.
     * goods_price
     * @Column(name="goods_price", type="decimal", length=10, accuracy=2, nullable=false, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var string|float|int|null
     */
    protected $goodsPrice = NULL;

    /**
     * 获取 goodsPrice - 商品价格.
     *
     * @return string|float|int|null
     */
    public function getGoodsPrice()
    {
        return $this->goodsPrice;
    }

    /**
     * 赋值 goodsPrice - 商品价格.
     * @param string|float|int|null $goodsPrice goods_price
     * @return static
     */
    public function setGoodsPrice($goodsPrice)
    {
        $this->goodsPrice = null === $goodsPrice ? null : $goodsPrice;
        return $this;
    }

    /**
     * 购买数量.
     * goods_num
     * @Column(name="goods_num", type="int", length=11, accuracy=0, nullable=false, default="0", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var int|null
     */
    protected ?int $goodsNum = 0;

    /**
     * 获取 goodsNum - 购买数量.
     *
     * @return int|null
     */
    public function getGoodsNum(): ?int
    {
        return $this->goodsNum;
    }

    /**
     * 赋值 goodsNum - 购买数量.
     * @param int|null $goodsNum goods_num
     * @return static
     */
    public function setGoodsNum($goodsNum)
    {
        $this->goodsNum = null === $goodsNum ? null : (int)$goodsNum;
        return $this;
    }

    /**
     * 发货状态:0=未发货,1=已发货,2=已收货.
     * dispatch_status
     * @Column(name="dispatch_status", type="tinyint", length=2, accuracy=0, nullable=false, default="0", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var int|null
     */
    protected ?int $dispatchStatus = 0;

    /**
     * 获取 dispatchStatus - 发货状态:0=未发货,1=已发货,2=已收货.
     *
     * @return int|null
     */
    public function getDispatchStatus(): ?int
    {
        return $this->dispatchStatus;
    }

    /**
     * 赋值 dispatchStatus - 发货状态:0=未发货,1=已发货,2=已收货.
     * @param int|null $dispatchStatus dispatch_status
     * @return static
     */
    public function setDispatchStatus($dispatchStatus)
    {
        $this->dispatchStatus = null === $dispatchStatus ? null : (int)$dispatchStatus;
        return $this;
    }

    /**
     * 发货费用.
     * dispatch_fee
     * @Column(name="dispatch_fee", type="decimal", length=10, accuracy=2, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var string|float|int|null
     */
    protected $dispatchFee = NULL;

    /**
     * 获取 dispatchFee - 发货费用.
     *
     * @return string|float|int|null
     */
    public function getDispatchFee()
    {
        return $this->dispatchFee;
    }

    /**
     * 赋值 dispatchFee - 发货费用.
     * @param string|float|int|null $dispatchFee dispatch_fee
     * @return static
     */
    public function setDispatchFee($dispatchFee)
    {
        $this->dispatchFee = null === $dispatchFee ? null : $dispatchFee;
        return $this;
    }

    /**
     * 售后状态:-1=拒绝,0=未处理,1=处理中,2=售后完成.
     * aftersale_status
     * @Column(name="aftersale_status", type="tinyint", length=2, accuracy=0, nullable=false, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var int|null
     */
    protected ?int $aftersaleStatus = NULL;

    /**
     * 获取 aftersaleStatus - 售后状态:-1=拒绝,0=未处理,1=处理中,2=售后完成.
     *
     * @return int|null
     */
    public function getAftersaleStatus(): ?int
    {
        return $this->aftersaleStatus;
    }

    /**
     * 赋值 aftersaleStatus - 售后状态:-1=拒绝,0=未处理,1=处理中,2=售后完成.
     * @param int|null $aftersaleStatus aftersale_status
     * @return static
     */
    public function setAftersaleStatus($aftersaleStatus)
    {
        $this->aftersaleStatus = null === $aftersaleStatus ? null : (int)$aftersaleStatus;
        return $this;
    }

    /**
     * 退款状态:-1=拒绝退款,0=未退款,1=同意.
     * refund_status
     * @Column(name="refund_status", type="enum", length=0, accuracy=0, nullable=true, default="0", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var string|null
     */
    protected ?string $refundStatus = '0';

    /**
     * 获取 refundStatus - 退款状态:-1=拒绝退款,0=未退款,1=同意.
     *
     * @return string|null
     */
    public function getRefundStatus(): ?string
    {
        return $this->refundStatus;
    }

    /**
     * 赋值 refundStatus - 退款状态:-1=拒绝退款,0=未退款,1=同意.
     * @param string|null $refundStatus refund_status
     * @return static
     */
    public function setRefundStatus($refundStatus)
    {
        $this->refundStatus = null === $refundStatus ? null : (string)$refundStatus;
        return $this;
    }

    /**
     * 买家备注.
     * ps
     * @Column(name="ps", type="varchar", length=2555, accuracy=0, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var string|null
     */
    protected ?string $ps = NULL;

    /**
     * 获取 ps - 买家备注.
     *
     * @return string|null
     */
    public function getPs(): ?string
    {
        return $this->ps;
    }

    /**
     * 赋值 ps - 买家备注.
     * @param string|null $ps ps
     * @return static
     */
    public function setPs($ps)
    {
        $this->ps = null === $ps ? null : (string)$ps;
        return $this;
    }

    /**
     * 卖家备注.
     * memo
     * @Column(name="memo", type="varchar", length=2555, accuracy=0, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var string|null
     */
    protected ?string $memo = NULL;

    /**
     * 获取 memo - 卖家备注.
     *
     * @return string|null
     */
    public function getMemo(): ?string
    {
        return $this->memo;
    }

    /**
     * 赋值 memo - 卖家备注.
     * @param string|null $memo memo
     * @return static
     */
    public function setMemo($memo)
    {
        $this->memo = null === $memo ? null : (string)$memo;
        return $this;
    }

    /**
     * 买家图集.
     * images
     * @Column(name="images", type="varchar", length=2555, accuracy=0, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var string|null
     */
    protected ?string $images = NULL;

    /**
     * 获取 images - 买家图集.
     *
     * @return string|null
     */
    public function getImages(): ?string
    {
        return $this->images;
    }

    /**
     * 赋值 images - 买家图集.
     * @param string|null $images images
     * @return static
     */
    public function setImages($images)
    {
        $this->images = null === $images ? null : (string)$images;
        return $this;
    }

    /**
     * 退款金额.
     * refund_fee
     * @Column(name="refund_fee", type="decimal", length=10, accuracy=2, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var string|float|int|null
     */
    protected $refundFee = NULL;

    /**
     * 获取 refundFee - 退款金额.
     *
     * @return string|float|int|null
     */
    public function getRefundFee()
    {
        return $this->refundFee;
    }

    /**
     * 赋值 refundFee - 退款金额.
     * @param string|float|int|null $refundFee refund_fee
     * @return static
     */
    public function setRefundFee($refundFee)
    {
        $this->refundFee = null === $refundFee ? null : $refundFee;
        return $this;
    }

    /**
     * 退款积分.
     * refund_score
     * @Column(name="refund_score", type="decimal", length=10, accuracy=2, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var string|float|int|null
     */
    protected $refundScore = NULL;

    /**
     * 获取 refundScore - 退款积分.
     *
     * @return string|float|int|null
     */
    public function getRefundScore()
    {
        return $this->refundScore;
    }

    /**
     * 赋值 refundScore - 退款积分.
     * @param string|float|int|null $refundScore refund_score
     * @return static
     */
    public function setRefundScore($refundScore)
    {
        $this->refundScore = null === $refundScore ? null : $refundScore;
        return $this;
    }

    /**
     * 退款贝壳.
     * refund_shell
     * @Column(name="refund_shell", type="decimal", length=10, accuracy=2, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var string|float|int|null
     */
    protected $refundShell = NULL;

    /**
     * 获取 refundShell - 退款贝壳.
     *
     * @return string|float|int|null
     */
    public function getRefundShell()
    {
        return $this->refundShell;
    }

    /**
     * 赋值 refundShell - 退款贝壳.
     * @param string|float|int|null $refundShell refund_shell
     * @return static
     */
    public function setRefundShell($refundShell)
    {
        $this->refundShell = null === $refundShell ? null : $refundShell;
        return $this;
    }

    /**
     * 添加时间.
     * createtime
     * @Column(name="createtime", type="int", length=11, accuracy=0, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var int|null
     */
    protected ?int $createtime = NULL;

    /**
     * 获取 createtime - 添加时间.
     *
     * @return int|null
     */
    public function getCreatetime(): ?int
    {
        return $this->createtime;
    }

    /**
     * 赋值 createtime - 添加时间.
     * @param int|null $createtime createtime
     * @return static
     */
    public function setCreatetime($createtime)
    {
        $this->createtime = null === $createtime ? null : (int)$createtime;
        return $this;
    }

    /**
     * 更新时间.
     * updatetime
     * @Column(name="updatetime", type="int", length=11, accuracy=0, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var int|null
     */
    protected ?int $updatetime = NULL;

    /**
     * 获取 updatetime - 更新时间.
     *
     * @return int|null
     */
    public function getUpdatetime(): ?int
    {
        return $this->updatetime;
    }

    /**
     * 赋值 updatetime - 更新时间.
     * @param int|null $updatetime updatetime
     * @return static
     */
    public function setUpdatetime($updatetime)
    {
        $this->updatetime = null === $updatetime ? null : (int)$updatetime;
        return $this;
    }

    /**
     * 删除时间.
     * deletetime
     * @Column(name="deletetime", type="int", length=11, accuracy=0, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var int|null
     */
    protected ?int $deletetime = NULL;

    /**
     * 获取 deletetime - 删除时间.
     *
     * @return int|null
     */
    public function getDeletetime(): ?int
    {
        return $this->deletetime;
    }

    /**
     * 赋值 deletetime - 删除时间.
     * @param int|null $deletetime deletetime
     * @return static
     */
    public function setDeletetime($deletetime)
    {
        $this->deletetime = null === $deletetime ? null : (int)$deletetime;
        return $this;
    }

    /**
     * 店铺id.
     * store_id
     * @Column(name="store_id", type="int", length=10, accuracy=0, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=true, virtual=false)
     * @var int|null
     */
    protected ?int $storeId = NULL;

    /**
     * 获取 storeId - 店铺id.
     *
     * @return int|null
     */
    public function getStoreId(): ?int
    {
        return $this->storeId;
    }

    /**
     * 赋值 storeId - 店铺id.
     * @param int|null $storeId store_id
     * @return static
     */
    public function setStoreId($storeId)
    {
        $this->storeId = null === $storeId ? null : (int)$storeId;
        return $this;
    }

    /**
     * 买家退快递公司.
     * express_name
     * @Column(name="express_name", type="varchar", length=60, accuracy=0, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var string|null
     */
    protected ?string $expressName = NULL;

    /**
     * 获取 expressName - 买家退快递公司.
     *
     * @return string|null
     */
    public function getExpressName(): ?string
    {
        return $this->expressName;
    }

    /**
     * 赋值 expressName - 买家退快递公司.
     * @param string|null $expressName express_name
     * @return static
     */
    public function setExpressName($expressName)
    {
        $this->expressName = null === $expressName ? null : (string)$expressName;
        return $this;
    }

    /**
     * 买家退快递公司编号.
     * express_code
     * @Column(name="express_code", type="varchar", length=60, accuracy=0, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var string|null
     */
    protected ?string $expressCode = NULL;

    /**
     * 获取 expressCode - 买家退快递公司编号.
     *
     * @return string|null
     */
    public function getExpressCode(): ?string
    {
        return $this->expressCode;
    }

    /**
     * 赋值 expressCode - 买家退快递公司编号.
     * @param string|null $expressCode express_code
     * @return static
     */
    public function setExpressCode($expressCode)
    {
        $this->expressCode = null === $expressCode ? null : (string)$expressCode;
        return $this;
    }

    /**
     * 买家退快递单号.
     * express_no
     * @Column(name="express_no", type="varchar", length=60, accuracy=0, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var string|null
     */
    protected ?string $expressNo = NULL;

    /**
     * 获取 expressNo - 买家退快递单号.
     *
     * @return string|null
     */
    public function getExpressNo(): ?string
    {
        return $this->expressNo;
    }

    /**
     * 赋值 expressNo - 买家退快递单号.
     * @param string|null $expressNo express_no
     * @return static
     */
    public function setExpressNo($expressNo)
    {
        $this->expressNo = null === $expressNo ? null : (string)$expressNo;
        return $this;
    }

    /**
     * 店铺发快递公司.
     * store_express_name
     * @Column(name="store_express_name", type="varchar", length=60, accuracy=0, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var string|null
     */
    protected ?string $storeExpressName = NULL;

    /**
     * 获取 storeExpressName - 店铺发快递公司.
     *
     * @return string|null
     */
    public function getStoreExpressName(): ?string
    {
        return $this->storeExpressName;
    }

    /**
     * 赋值 storeExpressName - 店铺发快递公司.
     * @param string|null $storeExpressName store_express_name
     * @return static
     */
    public function setStoreExpressName($storeExpressName)
    {
        $this->storeExpressName = null === $storeExpressName ? null : (string)$storeExpressName;
        return $this;
    }

    /**
     * 店铺发快递公司编号.
     * store_express_code
     * @Column(name="store_express_code", type="varchar", length=60, accuracy=0, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var string|null
     */
    protected ?string $storeExpressCode = NULL;

    /**
     * 获取 storeExpressCode - 店铺发快递公司编号.
     *
     * @return string|null
     */
    public function getStoreExpressCode(): ?string
    {
        return $this->storeExpressCode;
    }

    /**
     * 赋值 storeExpressCode - 店铺发快递公司编号.
     * @param string|null $storeExpressCode store_express_code
     * @return static
     */
    public function setStoreExpressCode($storeExpressCode)
    {
        $this->storeExpressCode = null === $storeExpressCode ? null : (string)$storeExpressCode;
        return $this;
    }

    /**
     * 店铺发快递单号.
     * store_express_no
     * @Column(name="store_express_no", type="varchar", length=60, accuracy=0, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var string|null
     */
    protected ?string $storeExpressNo = NULL;

    /**
     * 获取 storeExpressNo - 店铺发快递单号.
     *
     * @return string|null
     */
    public function getStoreExpressNo(): ?string
    {
        return $this->storeExpressNo;
    }

    /**
     * 赋值 storeExpressNo - 店铺发快递单号.
     * @param string|null $storeExpressNo store_express_no
     * @return static
     */
    public function setStoreExpressNo($storeExpressNo)
    {
        $this->storeExpressNo = null === $storeExpressNo ? null : (string)$storeExpressNo;
        return $this;
    }

    /**
     * 联系电话.
     * store_phone
     * @Column(name="store_phone", type="varchar", length=20, accuracy=0, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var string|null
     */
    protected ?string $storePhone = NULL;

    /**
     * 获取 storePhone - 联系电话.
     *
     * @return string|null
     */
    public function getStorePhone(): ?string
    {
        return $this->storePhone;
    }

    /**
     * 赋值 storePhone - 联系电话.
     * @param string|null $storePhone store_phone
     * @return static
     */
    public function setStorePhone($storePhone)
    {
        $this->storePhone = null === $storePhone ? null : (string)$storePhone;
        return $this;
    }

    /**
     * 收货人.
     * consignee
     * @Column(name="consignee", type="varchar", length=20, accuracy=0, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var string|null
     */
    protected ?string $consignee = NULL;

    /**
     * 获取 consignee - 收货人.
     *
     * @return string|null
     */
    public function getConsignee(): ?string
    {
        return $this->consignee;
    }

    /**
     * 赋值 consignee - 收货人.
     * @param string|null $consignee consignee
     * @return static
     */
    public function setConsignee($consignee)
    {
        $this->consignee = null === $consignee ? null : (string)$consignee;
        return $this;
    }

    /**
     * 详细地址.
     * address
     * @Column(name="address", type="varchar", length=255, accuracy=0, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var string|null
     */
    protected ?string $address = NULL;

    /**
     * 获取 address - 详细地址.
     *
     * @return string|null
     */
    public function getAddress(): ?string
    {
        return $this->address;
    }

    /**
     * 赋值 address - 详细地址.
     * @param string|null $address address
     * @return static
     */
    public function setAddress($address)
    {
        $this->address = null === $address ? null : (string)$address;
        return $this;
    }

    /**
     * 平台状态:0=未介入,1=申请介入,2=处理中,3=完成.
     * sys_status
     * @Column(name="sys_status", type="tinyint", length=2, accuracy=0, nullable=false, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false, unsigned=false, virtual=false)
     * @var int|null
     */
    protected ?int $sysStatus = NULL;

    /**
     * 获取 sysStatus - 平台状态:0=未介入,1=申请介入,2=处理中,3=完成.
     *
     * @return int|null
     */
    public function getSysStatus(): ?int
    {
        return $this->sysStatus;
    }

    /**
     * 赋值 sysStatus - 平台状态:0=未介入,1=申请介入,2=处理中,3=完成.
     * @param int|null $sysStatus sys_status
     * @return static
     */
    public function setSysStatus($sysStatus)
    {
        $this->sysStatus = null === $sysStatus ? null : (int)$sysStatus;
        return $this;
    }

}
